slope <- map_dfr(rigal_trends,
~.x %>%
select(siteid, linear_slope),
.id = "response"
)
slope_df <- slope %>%
pivot_wider(names_from = "response", values_from = "linear_slope")
Knowing that high evenness and turnover trends happens where there are no trends in species richness
Community that contains species less occurent globally have more turnover. -> CWM(rarity)
sp_mean_abun <- filtered_dataset$measurement %>%
left_join(filtered_dataset$site_quali, by = "siteid") %>%
left_join(filtered_dataset$location, by = "siteid") %>%
group_by(unitabundance, ecoregion, species) %>%
summarise(summ =
list(
enframe(
c(
summary_distribution(abundance, na.rm = TRUE)
)
)
)
) %>%
unnest(cols = summ) %>%
filter(name == c("mean")) %>%
pivot_wider(names_from = "name", values_from = "value")
#> `summarise()` has grouped output by 'unitabundance', 'ecoregion'. You can override using the `.groups` argument.
species_fq <- filtered_dataset$measurement %>%
left_join(filtered_dataset$site_quali, by = "siteid") %>%
left_join(filtered_dataset$location, by = "siteid") %>%
group_by(unitabundance, ecoregion, species) %>%
summarise(fq = n()) %>%
ungroup()
#> `summarise()` has grouped output by 'unitabundance', 'ecoregion'. You can override using the `.groups` argument.
op_fq <- filtered_dataset$measurement %>%
left_join(filtered_dataset$site_quali, by = "siteid") %>%
left_join(filtered_dataset$location, by = "siteid") %>%
group_by(unitabundance, ecoregion) %>%
summarise(n_op = n()) %>%
ungroup()
#> `summarise()` has grouped output by 'unitabundance'. You can override using the `.groups` argument.
species_fq_op <- species_fq %>%
left_join(op_fq, by = c("unitabundance", "ecoregion")) %>%
mutate(occurence = fq / n_op) %>%
select(-fq, -n_op) %>%
ungroup()
ti <- ecdf(filtered_dataset$measurement$abundance)
get_proba_values_from_dist <- function(
x = NULL,
emp_pdf = NULL) {
emp_pdf(x)
}
emp_pdf <- sp_mean_abun %>%
group_by(unitabundance, ecoregion) %>%
summarise(emp_pdf = list(ecdf(mean))) %>%
ungroup()
#> `summarise()` has grouped output by 'unitabundance'. You can override using the `.groups` argument.
rarity_species <- sp_mean_abun %>%
ungroup() %>%
left_join(emp_pdf, by = c("unitabundance", "ecoregion")) %>%
mutate(
prob_abun = map2_dbl(mean, emp_pdf,
~get_proba_values_from_dist(x = .x, emp_pdf = .y))
) %>%
left_join(species_fq_op, by = c("unitabundance", "ecoregion", "species")) %>%
select(-emp_pdf)
rarity_species %>%
ggplot(aes(y = prob_abun, x = log(occurence))) +
geom_point()
rarity_species %>%
ggplot(aes(x = prob_abun)) +
geom_histogram()
#> `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
rarity_species %>%
ggplot(aes(x = log(occurence))) +
geom_histogram()
#> `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
library(ecocom)
cwm_rarity <- filtered_dataset$measurement %>%
left_join(select(filtered_dataset$site_quali, siteid, unitabundance), by = "siteid") %>%
left_join(select(filtered_dataset$location, siteid, ecoregion), by = "siteid") %>%
left_join(
rarity_species,
by = c("ecoregion", "unitabundance", "species")
) %>%
group_by(op_id) %>%
summarise(
cwm_occurence = calc_cw_mean(
trait = log(occurence),
weight = abundance),
cwm_prob_abun = calc_cw_mean(
trait = prob_abun,
weight = abundance
)
)
site_median_cwm_rarity <- cwm_rarity %>%
left_join(select(filtered_dataset$measurement, siteid, op_id), by = "op_id") %>%
group_by(siteid) %>%
summarise(across(where(is.double), median))
slope_df_rarity <- slope_df %>%
left_join(site_median_cwm_rarity, by = "siteid")
slope_df_rarity %>%
ggplot(aes(
x = cwm_occurence,
y = jaccard,
color = cwm_prob_abun
)) +
scale_color_viridis() +
geom_point() +
geom_smooth(method = "gam")
#> `geom_smooth()` using formula 'y ~ s(x, bs = "cs")'
slope_df_rarity %>%
ggplot(aes(
x = cwm_prob_abun,
y = jaccard,
color = cwm_occurence
)) +
scale_color_viridis() +
geom_point() +
geom_smooth(method = "gam")
#> `geom_smooth()` using formula 'y ~ s(x, bs = "cs")'
tar_load(com_mat_site)
stab_sync <- com_mat_site %>%
mutate(
richness = purrr::map(mat, compute_sp_nb_from_com_mat),
richness_med = purrr::map_dbl(richness, median),
avg_sp = purrr::map(mat, colMeans),
cov_mat = purrr::map(mat, cov),
var_sp = purrr::map(cov_mat, diag),
synchrony = purrr::map_dbl(cov_mat, compute_synchrony),
cv_sp = purrr::map2_dbl(avg_sp, var_sp, compute_avg_cv_sp),
cv_com = compute_cv_com(synchrony = synchrony, cv_sp = cv_sp),
cv_classic = purrr::map2_dbl(cov_mat, mat, function(variance, abundance) {
sqrt(sum(variance)) / mean(rowSums(abundance))
})
) %>%
select(-starts_with("mat"))
stab_sync %>%
ggplot(aes(y = 1/cv_com, x = richness_med)) +
geom_point() +
geom_smooth(method = "lm")
#> `geom_smooth()` using formula 'y ~ x'
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
stab_sync %>%
ggplot(aes(y = synchrony, x = log(richness_med))) +
geom_point() +
geom_smooth(method = "lm")
#> `geom_smooth()` using formula 'y ~ x'
stab_sync %>%
ggplot(aes(y = cv_sp, x = richness_med)) +
geom_point() +
geom_smooth(method = "lm")
#> `geom_smooth()` using formula 'y ~ x'
slope_df_stab <- slope_df %>%
left_join(stab_sync, by = "siteid")
slope_df_stab %>%
ggplot(aes(y = jaccard, x = cv_sp)) +
geom_point()
slope_df_stab %>%
ggplot(aes(y = jaccard, x = synchrony)) +
geom_point()
slope_df_stab %>%
ggplot(aes(y = jaccard, x = 1 / cv_com)) +
geom_point()
library(ade4)
library(factoextra)
#> Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
res.pca <- dudi.pca(select(slope_df, -siteid),
scannf = FALSE, # Hide scree plot
nf = 5 # Number of components kept in the results
)
fviz_eig(res.pca)
p_pca <- map(list(c(1,2), c(2, 3), c(1, 3)),
~fviz_pca_var(res.pca,
axes = .x,
col.var = "contrib", # Color by contributions to the PC
gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"),
repel = TRUE # Avoid text overlapping
) +
theme(legend.position = "none") + labs(title = "")
)
plot_grid(plotlist = p_pca, ncol = 1)
#> Warning: ggrepel: 8 unlabeled data points (too many overlaps). Consider
#> increasing max.overlaps
median_site <- analysis_dataset %>%
select(
siteid,
starts_with("chao_"),
evenness,
total_abundance
) %>%
group_by(siteid) %>%
summarise(across(where(is.double), median, na.rm =TRUE)) %>%
rename_with(~paste0("med_", .x), where(is.double)) %>%
left_join(site_median_cwm_rarity, by = "siteid") %>%
left_join(select(stab_sync, siteid, cv_com, synchrony, cv_sp), by = "siteid") %>%
left_join(select(slope_df, siteid, hillebrand, jaccard, total), by = "siteid")
pca_turnover <- dudi.pca(
select(na.omit(median_site), -siteid),
scannf = FALSE, # Hide scree plot
nf = 5 # Number of components kept in the results
)
fviz_eig(pca_turnover)
p_1_2 <- fviz_pca_var(pca_turnover,
col.var = "contrib", # Color by contributions to the PC
gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"),
repel = TRUE # Avoid text overlapping
)
p_1_2
slope_classification_station <- map_dfr(
rigal_trends,
~.x %>%
select(siteid, linear_slope, shape_class, direction),
.id = "response"
)
get_shape_class_x_trends_y <- function(dataset = NULL, x = NULL, y = NULL,
type = "shape_class") {
trends <- dataset %>%
filter(response == y) %>%
select(all_of(c("siteid", "linear_slope")))
shape <- dataset %>%
filter(response == x) %>%
select(all_of(c("siteid", type)))
output <- trends %>%
left_join(shape, by = "siteid")
return(output)
}
boxplot_trends_shape <- function(
dataset = NULL, x = NULL, y = NULL, type = "shape_class",
geom_fun = geom_boxplot
) {
give.n <- function(x){
return(c(y = median(x)*1.25, label = length(x)))
# experiment with the multiplier to find the perfect position
}
get_shape_class_x_trends_y(
dataset = slope_classification_station,
x = x,
y = y,
type = type
) %>%
ggplot(aes_string(x = type, y = "linear_slope")) +
geom_fun() +
labs(y = paste0("Trends of ", y), x = paste0("Classification of ", x)) +
stat_summary(fun.data = give.n, geom = "text", fun = median,
position = position_dodge(width = 0.75)) +
theme(axis.text.x = element_text(angle = 30, hjust = 1))
}
get_shape_class_x_trends_y(
dataset = slope_classification_station,
x = "total_abundance",
y = "jaccard"
) %>%
ggplot(aes(x = shape_class, y = linear_slope)) +
geom_boxplot()
boxplot_trends_shape(
dataset = slope_classification_station,
x = "total_abundance",
y = "jaccard",
type = "direction"
)
boxplot_trends_shape(
dataset = slope_classification_station,
x = "species_nb",
y = "total",
type = "direction"
)
p <- map(c("hillebrand", "total"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "species_nb",
y = .x,
type = "shape_class"
))
plot_grid(plotlist = p)
p <- map(c("hillebrand", "total"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "species_nb",
y = .x,
type = "direction"
))
plot_grid(plotlist = p)
p <- map(c("hillebrand", "total"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "total_abundance",
y = .x,
type = "shape_class"
))
plot_grid(plotlist = p)
p <- map(c("hillebrand", "total"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "total_abundance",
y = .x,
type = "direction"
))
plot_grid(plotlist = p)
p <- map(c("nestedness", "turnover", "jaccard_dis"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "species_nb",
y = .x,
type = "shape_class"
))
plot_grid(plotlist = p)
p <- map(c("nestedness", "turnover", "jaccard_dis"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "species_nb",
y = .x,
type = "direction"
))
plot_grid(plotlist = p)
p <- map(c("nestedness", "turnover", "jaccard_dis"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "total_abundance",
y = .x,
type = "direction"
))
plot_grid(plotlist = p)
p <- map(c("nestedness", "turnover", "jaccard_dis"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "total_abundance",
y = .x,
type = "shape_class"
))
plot_grid(plotlist = p)
boxplot_trends_shape(
dataset = slope_classification_station,
x = "species_nb",
y = "jaccard",
type = "direction"
)
boxplot_trends_shape(
dataset = slope_classification_station,
x = "species_nb",
y = "jaccard",
type = "shape_class"
)
boxplot_trends_shape(
dataset = slope_classification_station,
x = "total_abundance",
y = "jaccard",
type = "direction"
)
boxplot_trends_shape(
dataset = slope_classification_station,
x = "total_abundance",
y = "jaccard",
type = "shape_class"
)
p <- map(c("nestedness", "turnover", "jaccard_dis"),
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "species_nb",
y = .x,
type = "shape_class"
))
plot_grid(plotlist = p)
var_y <- c("total", "appearance", "disappearance")
p <- map(var_y,
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "species_nb",
y = .x,
type = "direction"
))
plot_grid(plotlist = p)
p <- map(var_y,
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "species_nb",
y = .x,
type = "shape_class"
))
plot_grid(plotlist = p)
p <- map(var_y,
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "total_abundance",
y = .x,
type = "direction"
))
plot_grid(plotlist = p)
p <- map(var_y,
~boxplot_trends_shape( dataset =
slope_classification_station,
x = "total_abundance",
y = .x,
type = "shape_class"
))
plot_grid(plotlist = p)
stable_rich_siteid <- slope_classification_station %>%
filter(response == "species_nb", direction == "stable") %>%
.[["siteid"]]
high_jaccard_slope <-
slope_df %>%
filter(siteid %in% stable_rich_siteid) %>%
select(siteid, total_abundance, species_nb, jaccard) %>%
arrange(desc(jaccard))
site_desc_jaccard_slope <-
high_jaccard_slope %>%
.[["siteid"]]
p_high_jaccard_slope <- map(site_desc_jaccard_slope[1:20],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, jaccard),
y = "jaccard", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_high_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
p_pop_high_jaccard <-
map(site_desc_jaccard_slope[1:20],
~plot_temporal_population(
filtered_dataset$measurement %>%
filter(siteid == .x)
) +
theme(legend.position = "none")
)
plot_grid(plotlist = p_pop_high_jaccard, ncol = 3)
#> Warning: Removed 115 rows containing missing values (position_stack).
#> Warning: Removed 63 rows containing missing values (position_stack).
#> Warning: Removed 125 rows containing missing values (position_stack).
#> Warning: Removed 28 rows containing missing values (position_stack).
#> Warning: Removed 56 rows containing missing values (position_stack).
#> Warning: Removed 35 rows containing missing values (position_stack).
#> Warning: Removed 52 rows containing missing values (position_stack).
#> Warning: Removed 85 rows containing missing values (position_stack).
#> Warning: Removed 32 rows containing missing values (position_stack).
#> Warning: Removed 102 rows containing missing values (position_stack).
#> Warning: Removed 28 rows containing missing values (position_stack).
#> Warning: Removed 42 rows containing missing values (position_stack).
#> Warning: Removed 54 rows containing missing values (position_stack).
#> Warning: Removed 60 rows containing missing values (position_stack).
#> Warning: Removed 12 rows containing missing values (position_stack).
#> Warning: Removed 56 rows containing missing values (position_stack).
#> Warning: Removed 95 rows containing missing values (position_stack).
#> Warning: Removed 68 rows containing missing values (position_stack).
#> Warning: Removed 12 rows containing missing values (position_stack).
#> Warning: Removed 21 rows containing missing values (position_stack).
p_turnover_high_jaccard_slope <- map(site_desc_jaccard_slope[1:20],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, turnover),
y = "turnover", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_turnover_high_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
p_nestedness_high_jaccard_slope <- map(site_desc_jaccard_slope[1:20],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, nestedness),
y = "nestedness", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_nestedness_high_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
p_appearance_high_jaccard_slope <- map(site_desc_jaccard_slope[1:20],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, appearance),
y = "appearance", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_appearance_high_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
p_disappearance_high_jaccard_slope <- map(site_desc_jaccard_slope[1:20],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, disappearance),
y = "disappearance", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_disappearance_high_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
diff_baseline <- analysis_dataset %>%
group_by(siteid) %>%
arrange(year) %>%
summarise(
diff_baseline = year[2] - year[1],
span = year[length(year)] - year[1] + 1
)
slope_df %>%
left_join(diff_baseline, by = "siteid") %>%
ggplot(aes(x = diff_baseline, y = jaccard)) +
geom_point() +
geom_smooth(method = "gam")
#> `geom_smooth()` using formula 'y ~ s(x, bs = "cs")'
slope_df %>%
left_join(diff_baseline, by = "siteid") %>%
ggplot(aes(x = span, y = jaccard)) +
geom_point() +
geom_smooth(method = "gam")
#> `geom_smooth()` using formula 'y ~ s(x, bs = "cs")'
p_jaccard_low_jaccard <-
map(site_desc_jaccard_slope[(length(site_desc_jaccard_slope)-20):length(site_desc_jaccard_slope)],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, jaccard),
y = "jaccard", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_jaccard_low_jaccard, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
p_pop_low_jaccard <-
map(site_desc_jaccard_slope[
(length(site_desc_jaccard_slope)-20):length(site_desc_jaccard_slope)],
~plot_temporal_population(
filtered_dataset$measurement %>%
filter(siteid == .x)
) +
theme(legend.position = "none")
)
plot_grid(plotlist = p_pop_low_jaccard, ncol = 3)
#> Warning: Removed 45 rows containing missing values (position_stack).
#> Warning: Removed 9 rows containing missing values (position_stack).
#> Warning: Removed 48 rows containing missing values (position_stack).
#> Warning: Removed 18 rows containing missing values (position_stack).
#> Warning: Removed 24 rows containing missing values (position_stack).
#> Warning: Removed 18 rows containing missing values (position_stack).
#> Warning: Removed 18 rows containing missing values (position_stack).
#> Warning: Removed 100 rows containing missing values (position_stack).
#> Warning: Removed 12 rows containing missing values (position_stack).
#> Warning: Removed 33 rows containing missing values (position_stack).
#> Warning: Removed 20 rows containing missing values (position_stack).
#> Warning: Removed 48 rows containing missing values (position_stack).
#> Warning: Removed 25 rows containing missing values (position_stack).
#> Warning: Removed 96 rows containing missing values (position_stack).
#> Warning: Removed 12 rows containing missing values (position_stack).
#> Warning: Removed 36 rows containing missing values (position_stack).
#> Warning: Removed 91 rows containing missing values (position_stack).
#> Warning: Removed 105 rows containing missing values (position_stack).
#> Warning: Removed 24 rows containing missing values (position_stack).
#> Warning: Removed 20 rows containing missing values (position_stack).
p_turnover_low_jaccard_slope <- map(site_desc_jaccard_slope[(length(site_desc_jaccard_slope)-20):length(site_desc_jaccard_slope)],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, turnover),
y = "turnover", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_turnover_low_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
p_nestedness_low_jaccard_slope <- map(site_desc_jaccard_slope[(length(site_desc_jaccard_slope)-20):length(site_desc_jaccard_slope)],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, nestedness),
y = "nestedness", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_nestedness_low_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
p_appearance_low_jaccard_slope <- map(site_desc_jaccard_slope[(length(site_desc_jaccard_slope)-20):length(site_desc_jaccard_slope)],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, appearance),
y = "appearance", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_appearance_low_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
p_disappearance_low_jaccard_slope <- map(site_desc_jaccard_slope[(length(site_desc_jaccard_slope)-20):length(site_desc_jaccard_slope)],
~plot_community_data(
analysis_dataset %>%
filter(siteid == .x) %>%
select(siteid, year, disappearance),
y = "disappearance", x = "year",
smoothing_method = "lm"))
plot_grid(plotlist = p_disappearance_low_jaccard_slope, ncol = 3)
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
#> Warning: Removed 1 rows containing non-finite values (stat_smooth).
#> Warning: Removed 1 rows containing missing values (geom_point).
stable_rich_slope <- slope_classification_station %>%
filter(siteid %in% stable_rich_siteid) %>%
select(response, siteid, linear_slope) %>%
pivot_wider(names_from = "response", values_from = "linear_slope") %>%
mutate(
turn_minus_nest = turnover - nestedness,
turn_sup_0 = turnover > 0,
nest_sup_0 = nestedness > 0,
turn_sup_nest = turnover > nestedness,
appearance_sup_disappearance = appearance > disappearance,
jaccard_sup_0 = jaccard > 0,
richness_sup_0 = species_nb > 0
)
ti <- table(stable_rich_slope$richness_sup_0, stable_rich_slope$turn_sup_0,
dnn = list("richness > 0", "turnover > 0"))
ti
#> turnover > 0
#> richness > 0 FALSE TRUE
#> FALSE 1115 1015
#> TRUE 1340 1001
ti <- table(stable_rich_slope$richness_sup_0, stable_rich_slope$nest_sup_0,
dnn = list("richness > 0", "nestedness > 0"))
ti
#> nestedness > 0
#> richness > 0 FALSE TRUE
#> FALSE 1217 913
#> TRUE 1193 1148
sum(stable_rich_slope$jaccard_sup_0)
#> [1] 1619
ti <- table(stable_rich_slope$jaccard_sup_0, stable_rich_slope$turn_sup_nest,
dnn = list("jaccard > 0", "turnover > nestedness"))
ti
#> turnover > nestedness
#> jaccard > 0 FALSE TRUE
#> FALSE 1309 1543
#> TRUE 701 918
ti <- table(stable_rich_slope$jaccard_sup_0,
stable_rich_slope$appearance_sup_disappearance,
dnn = list("jaccard > 0", "appearance > disappearance"))
ti
#> appearance > disappearance
#> jaccard > 0 FALSE TRUE
#> FALSE 1429 1423
#> TRUE 843 776
stable_rich_slope %>%
pivot_longer(-siteid, names_to = "response", values_to = "linear_slope") %>%
filter(response %in% c("jaccard_dis", "turnover", "nestedness", "turn_minus_nest")) %>%
select(response, siteid, linear_slope) %>%
ggplot(aes(x = response, y = linear_slope)) +
geom_boxplot()
#debugonce(get_matrix_classification)
get_matrix_classification <- function(dataset = NULL, x = NULL, y = NULL) {
ti <- dataset %>%
filter(response %in% c(x, y)) %>%
select(siteid, response, shape_class) %>%
pivot_wider(names_from = "response", values_from = "shape_class")
table(
ti[[x]],
ti[[y]]
)
}
ti <- get_matrix_classification(
dataset = slope_classification_station,
x = "species_nb",
y = "hillebrand"
)
corrplot::corrplot(as.matrix(ti) / rowSums(ti))
Reproducibility receipt
## datetime
Sys.time()
#> [1] "2022-01-21 16:54:55 CST"
## repository
if(requireNamespace('git2r', quietly = TRUE)) {
git2r::repository()
} else {
c(
system2("git", args = c("log", "--name-status", "-1"), stdout = TRUE),
system2("git", args = c("remote", "-v"), stdout = TRUE)
)
}
#> Local: main /home/alain/Documents/post-these/isu/RivFishTimeBiodiversityFacets
#> Head: [ff145f8] 2022-01-21: ignore figures
## session info
sessionInfo()
#> R version 4.0.5 (2021-03-31)
#> Platform: x86_64-pc-linux-gnu (64-bit)
#> Running under: Debian GNU/Linux 10 (buster)
#>
#> Matrix products: default
#> BLAS: /home/alain/.Renv/versions/4.0.5/lib/R/lib/libRblas.so
#> LAPACK: /home/alain/.Renv/versions/4.0.5/lib/R/lib/libRlapack.so
#>
#> locale:
#> [1] LC_CTYPE=fr_FR.UTF-8 LC_NUMERIC=C
#> [3] LC_TIME=fr_FR.UTF-8 LC_COLLATE=fr_FR.UTF-8
#> [5] LC_MONETARY=fr_FR.UTF-8 LC_MESSAGES=fr_FR.UTF-8
#> [7] LC_PAPER=fr_FR.UTF-8 LC_NAME=C
#> [9] LC_ADDRESS=C LC_TELEPHONE=C
#> [11] LC_MEASUREMENT=fr_FR.UTF-8 LC_IDENTIFICATION=C
#>
#> attached base packages:
#> [1] parallel stats graphics grDevices utils datasets methods
#> [8] base
#>
#> other attached packages:
#> [1] factoextra_1.0.7 ade4_1.7-16 ecocom_0.0.0.9000
#> [4] inlabru_2.3.1 INLA_21.11.22 sp_1.4-5
#> [7] foreach_1.5.1 Matrix_1.3-2 leafpop_0.1.0
#> [10] mapview_2.10.0 future_1.21.0 vegan_2.5-7
#> [13] lattice_0.20-41 permute_0.9-5 codyn_2.0.5
#> [16] janitor_2.1.0 viridis_0.5.1 viridisLite_0.3.0
#> [19] cowplot_1.1.1 rnaturalearthdata_0.1.0 rnaturalearth_0.1.0
#> [22] sf_1.0-4 rmarkdown_2.11 scales_1.1.1
#> [25] kableExtra_1.3.1 here_1.0.1 lubridate_1.7.9.2
#> [28] magrittr_2.0.1 forcats_0.5.1 stringr_1.4.0
#> [31] dplyr_1.0.4 purrr_0.3.4 readr_2.1.1
#> [34] tidyr_1.1.2 tibble_3.1.6 ggplot2_3.3.3
#> [37] tidyverse_1.3.0 tarchetypes_0.3.2 targets_0.8.1
#> [40] conflicted_1.1.0
#>
#> loaded via a namespace (and not attached):
#> [1] readxl_1.3.1 uuid_1.0-3 backports_1.2.1
#> [4] corrplot_0.84 systemfonts_1.0.0 igraph_1.2.6
#> [7] splines_4.0.5 crosstalk_1.1.1 listenv_0.8.0
#> [10] leaflet_2.0.4.1 digest_0.6.27 htmltools_0.5.1.1
#> [13] leaflet.providers_1.9.0 fansi_0.5.0 memoise_2.0.0
#> [16] cluster_2.1.1 openxlsx_4.2.3 tzdb_0.2.0
#> [19] globals_0.14.0 modelr_0.1.8 svglite_2.0.0
#> [22] prettyunits_1.1.1 colorspace_2.0-0 rvest_0.3.6
#> [25] ggrepel_0.9.1 rgdal_1.5-28 haven_2.3.1
#> [28] xfun_0.28 leafem_0.1.6 callr_3.7.0
#> [31] crayon_1.4.2 jsonlite_1.7.2 brew_1.0-6
#> [34] iterators_1.0.13 glue_1.5.1 gtable_0.3.0
#> [37] webshot_0.5.2 car_3.0-10 abind_1.4-5
#> [40] DBI_1.1.1 rstatix_0.7.0 Rcpp_1.0.6
#> [43] progress_1.2.2 units_0.6-7 foreign_0.8-81
#> [46] stats4_4.0.5 htmlwidgets_1.5.3 httr_1.4.2
#> [49] wk_0.5.0 ellipsis_0.3.2 pkgconfig_2.0.3
#> [52] farver_2.0.3 sass_0.3.1 dbplyr_2.1.0
#> [55] utf8_1.2.2 tidyselect_1.1.1 labeling_0.4.2
#> [58] rlang_0.4.12 munsell_0.5.0 cellranger_1.1.0
#> [61] tools_4.0.5 cachem_1.0.4 cli_3.1.0
#> [64] generics_0.1.0 broom_0.7.4 evaluate_0.14
#> [67] fastmap_1.1.0 yaml_2.2.1 processx_3.5.2
#> [70] knitr_1.36 fs_1.5.1 zip_2.1.1
#> [73] s2_1.0.7 satellite_1.0.4 nlme_3.1-152
#> [76] xml2_1.3.2 compiler_4.0.5 rstudioapi_0.13
#> [79] curl_4.3.2 png_0.1-7 ggsignif_0.6.1
#> [82] e1071_1.7-4 reprex_1.0.0 bslib_0.2.4
#> [85] stringi_1.7.6 highr_0.9 ps_1.6.0
#> [88] rgeos_0.5-5 classInt_0.4-3 vctrs_0.3.8
#> [91] pillar_1.6.4 lifecycle_1.0.1 furrr_0.2.2
#> [94] jquerylib_0.1.3 data.table_1.13.6 raster_3.5-9
#> [97] R6_2.5.1 bookdown_0.24 rio_0.5.16
#> [100] KernSmooth_2.23-18 gridExtra_2.3 parallelly_1.23.0
#> [103] codetools_0.2-18 MASS_7.3-53.1 assertthat_0.2.1
#> [106] rprojroot_2.0.2 withr_2.4.3 mgcv_1.8-34
#> [109] hms_1.1.1 terra_1.4-22 grid_4.0.5
#> [112] class_7.3-18 snakecase_0.11.0 carData_3.0-4
#> [115] ggpubr_0.4.0 git2r_0.29.0 base64enc_0.1-3